Program analysis and specialisation using tree automata
نویسنده
چکیده
Static analysis of programs using regular tree grammars has been studied for more than 30 years, the earliest example being Reynolds’ work on automatic derivation of data-type definitions from untyped functional programs. Recently the topic has attracted renewed attention, with applications in program specialisation, data flow analysis, shape analysis, mode and type inference, termination analysis and infinite state model checking. There are several related viewpoints on analysis using regular tree grammars, including set constraints, abstract interpretation over tree automata domain, directed types, regular approximation and regular type inference. The lectures will first summarise the relevant properties of finite tree automata, which provide a common foundation for these different viewpoints. It will then be shown how to construct an abstract interpretation over a domain of finite tree automata. Various program analyses based on this domain will be presented, such as “soft” type construction, checking of safety properties in infinite state systems, and derivation of term-size measures for termination analysis. The lectures will also cover the construction of static analyses based on a given tree grammar capturing some properties of interest. It will be shown (for logic programs) how to build a precise analysis for a program based on an arbitrary regular tree grammar. This has applications in type and mode inference, binding time analysis for offline partial evaluation, and control of online partial evaluation.
منابع مشابه
Regular Trees as an Abstract Domain for Program Specialisation
On-line partial evaluation algorithms include a generalisation step, which is needed to ensure termination. In partial evaluation of logic and functional programs, the usual generalisation operation is the most speci c generalisation (msg) of expressions. This can cause loss of information, which is especially serious in programs whose computations rst build some internal data structure, which ...
متن کاملAn Automaton Model for Xcerpt Type Checking and XML Schema Validation
An automaton model used for validation and type checking with languages defined using R2G2 [1] is presented. First, tree-shaped data is considered to be handled by the automaton model, then the approach is extended to graph shaped data. The presented approach is based on specialized non-deterministic finite state automata. The specialisation copes with unranked tree shaped data. Graph shaped da...
متن کاملMultidimensional fuzzy finite tree automata
This paper introduces the notion of multidimensional fuzzy finite tree automata (MFFTA) and investigates its closure properties from the area of automata and language theory. MFFTA are a superclass of fuzzy tree automata whose behavior is generalized to adapt to multidimensional fuzzy sets. An MFFTA recognizes a multidimensional fuzzy tree language which is a regular tree language so that for e...
متن کاملNEW DIRECTION IN FUZZY TREE AUTOMATA
In this paper, our focus of attention is the proper propagationof fuzzy degrees in determinization of $Nondeterministic$ $Fuzzy$$Finite$ $Tree$ $Automata$ (NFFTA). Initially, two determinizationmethods are introduced which have some limitations (one inbehavior preserving and other in type of fuzzy operations). Inorder to eliminate these limitations and increasing theefficiency of FFTA, we defin...
متن کاملTREE AUTOMATA BASED ON COMPLETE RESIDUATED LATTICE-VALUED LOGIC: REDUCTION ALGORITHM AND DECISION PROBLEMS
In this paper, at first we define the concepts of response function and accessible states of a complete residuated lattice-valued (for simplicity we write $mathcal{L}$-valued) tree automaton with a threshold $c.$ Then, related to these concepts, we prove some lemmas and theorems that are applied in considering some decision problems such as finiteness-value and emptiness-value of recognizable t...
متن کامل